package 行为型模式.模板方法模式;

//抽象类，定义模板方法和基本方法
public abstract class AbstractClass {
    //模板方法定义
    public final void cookProcess(){
        pourOil();
        heatOil();
        pourVegetables();
        pourSauce();
        fry();
    }

    //倒油，热油是一样的，所以直接实现
    public void pourOil() {
        System.out.println("倒油");
    }
    public void heatOil() {
        System.out.println("热油");
    }

    //倒蔬菜不一样，抽象
    public abstract void pourVegetables();

    //倒调味
    public abstract void pourSauce();

    //翻炒是一样的
    public void fry(){
        System.out.println("炒啊炒啊炒啊炒");
    }
}
